perm filename SMPLS.F4[P11,LCS]2 blob sn#426312 filedate 1979-03-19 generic text, type T, neo UTF8
C***** SMPLS.F4  (CALLED 'WAVES' AT IRCAM)**************
C DISPLAYS SAMPLES (WAVES) OF .DAT FILES PRODUCED BY PASS3, MUSIC5.
C LOAD WITH 'OPEN' FOR IO ROUTINES.

	COMMON /DEVS/ID1,ID21,JTYPE,ID23,ID20
	DIMENSION I(512),ILI(1),L(131)
	EQUIVALENCE (I1,I),(I2,I(2)),(I3,I(3)),(AMP,MAXAMP)
	DATA BLA/' '/,IAST/'*'/,TEST/'TEST'/
	DATA IFF/'F'/,SMPS/'SMPS'/,IBLA/' '/
1212	IDEV=5   
C***** 5=TTY, 1=DSK
	LCNT=20
	LEND=130
	KOLD=130
C  JUNPAC IS FOR OTHER THAN 12-BIT SMPLS.  NOT USED YET.
	JUNPAC=0
	JNCX=0
	KCNT=0
	ICNT=0
	WRITE(JTYPE,30)
	READ(JTYPE,31)FLNM
	IF(FLNM.EQ.BLA)FLNM=TEST
	CALL DISKO(ID21,FLNM,-1)
C OPEN AN INPUT FILE 
C////	KBIT=3
C////	IAMP=131000
C////	DUR=ISMPLS/DUR
C**** NEXT 2 FOR PDP11 VERSION (12BIT ONLY NOW)
	IAMP=2080
	JAMP=51
	ISMPLS=32000

	K40=40
	IFLIP=0
	NCH=1
	IF(NCHNS.LT.2)GO TO 33
	WRITE(JTYPE,34)
34	FORMAT(' TYPE CHNL NUM.  '$)
	IFLIP=-1
	READ(JTYPE,1)NCH
	IF(NCH.EQ.0)NCH=1
	IF(NCH.NE.1)IFLIP=-IFLIP
33	WRITE(JTYPE,47)
	READ(JTYPE,46)INCX
	IF(INCX.EQ.0)INCX=1
	WRITE(JTYPE,40)
	F=0
	READ(JTYPE,46)ISKP,LAST,NORM
C***************************************************************
C************* YOU MUST PUT COMMAS BETWEEN INPUT NUMBERS *******
C***************************************************************
	IF(LAST.EQ.0)LAST = ISKP+100
C  IF NO NUMBER IS TYPED FOR 'LAST' ISKP+100 SAMPLES ARE DISPLAYED.
	IF(LAST.LT.ISKP)LAST=ISKP+LAST
	IF(LAST.GT.ISMPLS)LAST=ISMPLS
	IF(ISKP.NE.0)ISKP=ISKP-1
50	FORMAT(' <CR>=DPY   F=TO A FILE '$)
51	FORMAT(' <CR>=LPT FORMAT     D=DPY FORMAT '$)
	WRITE(JTYPE,50)
	READ(JTYPE,31)IDSK
	IF(IDSK.NE.IFF)GO TO 45
	WRITE(JTYPE,51)
	READ(JTYPE,31)FL
	CALL DISKO(ID1,SMPS,0)
C OPEN AN OUTPUT FILE
	LCNT=50
	WRITE(JTYPE,44)
44	FORMAT(/' WRITING FILE: SMPS.DAT',/)
CC	1 ' TO STOP: TYPE <CALL>, F <CR>')
144	IDEV=1  
C** FOR DSK OUTPUT.
40	FORMAT(' TYPE SAMPLE NUM.1, NUM2  '$)
1	FORMAT(8I9)
46	FORMAT(8I)
31	FORMAT(2A4)
30	FORMAT(' TYPE FILE NAME  '$)
5	FORMAT(1X80A1)
CC	JAMP=51
CC	IF(JUNPAC.NE.0)JAMP=1637
45	IF(FL.NE.BLA)GO TO 2
CC45	IF(IFL.NE.IBLA)GO TO 102
	JAMP=32
CC	IF(JUNPAC.NE.0)JAMP=1007
	K40=65
	GO TO 2
CC102	IF(JUNPAC.NE.0)GO TO 2
CC202	IF(MAXAMP.GT.1900)GO TO 2
C////	IF(K.NE.'N')GO TO 2
C////	JAMP=IAMP/40
C////	DO 3 K=1,1024
2	READ(ID21)I
	DO 3 JJ=1,512

	IFLIP=-IFLIP
	ICNT=ICNT+1    
	  IF(ICNT.LT.ISKP)GO TO 3
	IF(ICNT.GT.LAST)GO TO 41 
	IF(IFLIP)GO TO 3  
C****** STEREO FLIP-FLOP
	JNCX=JNCX+1
	IF(JNCX.NE.INCX)GO TO 3
	JNCX=0
99	KX=I(JJ)
	KK=(KX+IAMP)/JAMP  
	KF=-1
	KZZ=6
CC	IF(MOD(ICNT,100).NE.0)GO TO 997
	KCNT=KCNT+1
	IF(KCNT.LT.LCNT)GO TO 997
	KCNT=0
	KF=0 
	KZZ=14
997	IF(KOLD.EQ.KK)GO TO 777
	K80=KOLD
	IF(KK.GT.KOLD)K80=KK
	IF(KK.GE.LEND)LEND=K40 
	DO 4 KM=6,LEND
4	L(KM)=IBLA
400	LEND=KK
	INC=-1
	IF(KK.GE.K40)INC=-INC
	DO 999 KZ=K40,KK,INC
999	L(KZ)=IAST
998	KZ=KK  
	KOLD=KK
	IF (KZ.GE.K40)GO TO 777
	KZ=K40
777	IF(KF)GO TO 7
	WRITE(IDEV,106)FLNM,ICNT,(L(NN),NN=11,KZ)
	IF(IDEV.EQ.1)WRITE(JTYPE,106)FLNM,ICNT  
C***TELL HOW FAR ALONG WE ARE.
	GO TO 3
CC7	IF(JUNPAC.NE.0)GO TO 778
7	WRITE(IDEV,1105)KX,(L(NN),NN=6,KZ)
	GO TO 3
778	WRITE(IDEV,105)KX,(L(NN),NN=9,KZ)
3	CONTINUE 
	GO TO 2
CCCC********41	CALL CLOSE(21)
41	GO TO 1212
47	FORMAT(' INCREMENT = '$)
105	FORMAT(I9,122A1)
1105	FORMAT(I6,124A1)
106	FORMAT(1XA4,I6,120A1)
	END